Video frames sent over a network are compressed because of limited bandwidth. One scheme for video transmission commonly used relies on two types of compressed video frames, Instantaneous Decoder Refresh frames (IDR-frames) and temporal predictive coding frames (P-frames). P-frames use inter-frame coding wherein a video frame is coded in terms of motion vectors and block coding referencing a recently decoded frame. P-frames have the advantage over IDR-frames because they require less bandwidth. However, when an error occurs such as missing a packet, the error can propagate to subsequent video frames. Currently, this problem is solved by sending an IDR-frame to re-establish the video sequence. While IDR-frames have the advantage of having independently coded (intra-coded) video frames they require more bandwidth than P-frames. When bandwidth is limited, IDR-frames may create a blurred video image.
In a multipoint videoconferencing system, a video source, on determining that at least one endpoint unsuccessfully decoded a P-frame, sends an IDR-frame as the next compressed frame. Because most endpoints typically transmit only one video stream, the IDR-frame is sent to all endpoints even if the previous P-frame was successfully decoded by the other endpoints. The situation is the same when a destination endpoint in a multipoint videoconference switches to a new video link. The source of the new video link sends an IDR-frame to establish the reference picture for future P-frames to all endpoints even though not all endpoints needed the IDR-frame.
With multiple video destinations, errors or missing packets multiply in frequency requiring more IDR-frames. When added with IDR-frames being sent for establishing new video links as endpoints switch back and forth between speakers, the potential for video blurring because of limited bandwidth becomes critical in a multipoint videoconference.
In systems where a video source provides video frames that are drastically different from one to the next, the need for an independently coded video frame is reasonable. However, in a video teleconferencing scenario, the background of the conference room, the color and shapes of the objects in the video are unlikely to change during the video stream and the need for IDR-frames becomes less apparent.
A known method for reducing IDR-frames is NEWPRED where the destination decoder provides feedback to a video source encoder. For error recovery, the NEWPRED method uses P-frames referencing a long term reference frame previously sent to and acknowledged by the destination decoder as being successfully decoded. However, this method is currently only applicable to point-to-point applications and to error recovery.
Therefore, what is desired is a system and method that overcomes challenges found in the art, including a method for reducing the number of IDR-frames needed for multipoint video teleconferencing when recovering from errors or when switching to a new video source.